do not ignore write error for any output size
authorJim Meyering <meyering@redhat.com>
Sat, 24 Sep 2011 09:22:06 +0000 (11:22 +0200)
committerJim Meyering <meyering@redhat.com>
Sat, 24 Sep 2011 09:22:06 +0000 (11:22 +0200)
commita678fa1b75243b260022fbd06b9f7ae9cab921cd
treef49a09d7c4202e1b3082ee338df3f2a9acc72e53
parent2315ec504234a168b8f33f8577a5b4443481dc88
do not ignore write error for any output size

The previous change was incomplete.
While it makes emacs --batch detect the vast majority of stdout
write failures, errors were still ignored whenever the output size is
k * (BUFSIZ+1) - 4.  E.g., on a system with BUFSIZ of 4096,
  $ emacs --batch --eval '(print (format "%4093d" 0))' > /dev/full \
      && echo FAIL: ignored write error
  FAIL: ignored write error
  $ emacs --batch --eval '(print (format "%20481d" 0))' > /dev/full \
      && echo FAIL: ignored write error
  FAIL: ignored write error
* emacs.c (Fkill_emacs): Also test ferror.  (Bug#9574)
src/ChangeLog
src/emacs.c